﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Shared;
using VideoClub.Business;

namespace VideoClub.UI.Reportes
{
    public partial class FrmPrimerReporte : Form
    {
        public FrmPrimerReporte()
        {
            InitializeComponent();
        }

        private void FrmPrimerReporte_Load(object sender, EventArgs e)
        {

            this.crystalReportViewer1.RefreshReport();
            
            cmbBarrios.DataSource = DatosComunesBO.ObtenerTodosLosBarrios();
            cmbBarrios.DisplayMember = "pnombre";
            cmbBarrios.ValueMember = "pidBarrio";
        }

        private void button1_Click(object sender, EventArgs e)
        {
            DateTime fecha1 = dateTimePicker1.Value;
            DateTime fecha2 = dateTimePicker2.Value;

            ReportDocument oRep = new ReportDocument();
            ParameterField primerParametro = new ParameterField();
            ParameterField segundoParametro = new ParameterField();
            ParameterField tercerParametro = new ParameterField();
            ParameterFields parametros = new ParameterFields();
            ParameterDiscreteValue pdv1 = new ParameterDiscreteValue();
            ParameterDiscreteValue pdv2 = new ParameterDiscreteValue();
            ParameterDiscreteValue pdv3 = new ParameterDiscreteValue();
            
            primerParametro.Name = "@fecha1";
            segundoParametro.Name = "@fecha2";
            pdv1.Value = fecha1;
            pdv2.Value = fecha2;
            primerParametro.CurrentValues.Add(pdv1);
            segundoParametro.CurrentValues.Add(pdv2);
            parametros.Add(primerParametro);
            parametros.Add(segundoParametro);
               
            if(!cmbBarrios.Text.Equals("---"))
            {
                tercerParametro.Name = "@barrio";
                pdv3.Value = cmbBarrios.Text;
                tercerParametro.CurrentValues.Add(pdv3);
                parametros.Add(tercerParametro); 
            }else
            {
                tercerParametro.Name = "@barrio";
                pdv3.Value = null;
                tercerParametro.CurrentValues.Add(pdv3);
                parametros.Add(tercerParametro); 
            }

            crystalReportViewer1.ParameterFieldInfo = parametros;
            oRep.Load(@"C:\Users\Heber\Desktop\Proyecto VideoClub\VideoClub\UI\Reportes\CrystalReport1.rpt");
            crystalReportViewer1.ReportSource = oRep;

        }
    }
}
